package io.gitee.tziye.enums;

import io.gitee.tziye.common.RenaiUtil;
import lombok.AllArgsConstructor;

import java.util.Date;

@AllArgsConstructor
public enum TimePattern {

    Y("yy"),
    YY("yyyy"),

    YM("yyMM"),
    YYM("yyyyMM"),

    YMD("yyMMdd"),
    YYMD("yyyyMMdd"),

    YMDH("yyMMddHH"),
    YYMDH("yyyyMMddHH"),

    YMDHM("yyMMddHHmm"),
    YYMDHM("yyyyMMddHHmm"),

    YMDHMS("yyMMddHHmmss"),
    YYMDHMS("yyyyMMddHHmmss"),

    EPOCHS("EPOCH_S"),
    EPOCHM("EPOCH_M");

    public final String pattern;

    public String format() {
        if (EPOCHS.pattern.equals(pattern)) {
            return String.valueOf(System.currentTimeMillis() / 1000);
        }
        if (EPOCHM.pattern.equals(pattern)) {
            return String.valueOf(System.currentTimeMillis());
        }
        return RenaiUtil.timeFormat(pattern, new Date());
    }
}
